package ibmetp.mis.service;

import java.util.List;

import ibmetp.mis.vo.Page;
import ibmetp.mis.vo.User;


/**
 * 用户Service接口
 * @author LAN DABIN
 * @created 2011-9-30
 *
 */
public interface UserService {
  
 /**
  * 通过用户ID得到用户信息
  * @param id
  * @return
  */
  public User getUserById(Long id);
  
  /**
   * 将用户选进部门
   * @param userIds 用户Id
   * @param deptId  部门Id
   * @return
   */
  public String selectUserIntoDept(String userIds,Long deptId);
  /**
   * 通过用户编号得到用户信息
   */
  public User getUserByNo(String userNo);
  /**
   * 添加用户
   * @param user 用户信息
   * @return 用户信息
   */
  public String addUser(User user);
  
  /**
   * 更新用户信息
   * @param user 用户信息
   * @return
   */
  public String updateUser(User user);
  
  /**
   * 批量删除用户
   * @param userIds 用户ID组
   * @return
   */
  public String deleteUserByIds(String userIds);
  
  /**
   * 批量添加用户
   * @param users
   * @return
   */
  public String importUsers(List<User> users);
 
  /**
   * 获取未进部门的用户
   * @param pageNo 当前页号
   * @param pageSize 页面大小
   * @param object 查询条件
   * @return 用户列表信息
   */
  public Page getFreeUsers(int pageNo, int pageSize, Object object);
  
  /**
   * 用户退出部门
   * @param userId 用户Id
   */
  public String outOfDept(String userIds);
  /**
   * 用户编号和密码验证
   * @param userNo
   * @param pwd
   * @return
   */
  public User hasUser(String userNo,String pwd);
  /**
   * 获取角色的用户
   * @param pageNo
   * @param pageSize
   * @param object
   * @return
   */
  public Page getRoleUsers(Long roleId,int pageNo, int pageSize, Object object);
}
